package meituanMeishiPc

import (
	"spider/models"
)

//列表页单条数据
type ListOne struct {
	PoiId         int    `json:"poiId"`
	FrontImg      string `json:"frontImg"`
	Title         string `json:"title"`
	AllCommentNum int    `json:"allCommentNum"`
	Address       string `json:"address"`
	AvgPrice      int    `json:"avgPrice"`
}

//列表页结果
type ResArr struct {
	TotalCounts int       `json:"totalCounts"`
	PoiInfos    []ListOne `json:"poiInfos"`
}

//资质返回结果数据
type LicenseResData struct {
	MeituanLicenseBase
}

//资质返回结果
type LicenseResArr struct {
	Status int            `json:"status"`
	Data   LicenseResData `json:"data"`
}

type TableMeiTuanLicense struct {
	Id int `gorm:"primary_key"`
	MeituanLicenseBase
	OssBusinessLicenceImgUrl   string `gorm:"column:ossBusinessLicenceImgUrl"`
	OssRestaurantLicenceImgUrl string `gorm:"column:ossRestaurantLicenceImgUrl"`
}

type MeituanLicenseBase struct {
	PoiId                   int `json:"poiId" gorm:"column:poiId"`
	Level                   string                                                                //管理等级
	Name                    string                                                                //单位名称
	LicenseNo               string `json:"licenseNo"  gorm:"column:licenseNo"`                    //餐饮服务许可证编号
	LegalRepresentative     string `json:"legalRepresentative" gorm:"column:legalRepresentative"` //法定代表人
	Address                 string                                                                //经营地址
	Scope                   string `gorm:"column:scope"`                                          //经营范围
	ValidDate               string `gorm:"column:validDate"`                                      //饮服务许可证 结束日期
	BusinessLicenceImgUrl   string `gorm:"column:businessLicenceImgUrl"`                          //餐饮服务许可证 地址
	RestaurantLicenceImgUrl string `gorm:"column:restaurantLicenceImgUrl"`                        //食品许可证	地址
}

func (table *TableMeiTuanLicense) TableName() string {
	return "meituan_license"
}

func (table *TableMeiTuanLicense) QueryOne(fieldStr string, where TableMeiTuanLicense) (res []TableMeiTuanLicense) {
	models.G_ormdb.Table(table.TableName()).Select(fieldStr).Where(&where).First(&res)
	return
}

func (table *TableMeiTuanLicense) UpdateOne(where TableMeiTuanLicense, data TableMeiTuanLicense) (RowsAffected int64, err error) {
	res := models.G_ormdb.Table(table.TableName()).Where(&where).Updates(data)
	RowsAffected = res.RowsAffected
	err = res.Error
	return
}

func (table *TableMeiTuanLicense) Add(data TableMeiTuanLicense) (RowsAffected int64, err error) {
	res := models.G_ormdb.Table(table.TableName()).Create(&data)
	RowsAffected = res.RowsAffected
	err = res.Error
	return
}
